//	Эта переменная говорит о том, что файл загружен браузером.
var rstLoaded = true;
//	alert('in rst');
var ZurichPrice;
var ZurichPriceDiscount;
var ZurichNotes = '';
var ZurichInfo = {
	name: "Цюрих",
	price: 0,
	discountPrice: 0,
	notesToDisplay: new Array(0),
	notesSpecial: '',
	notes: "",
	rating: 0,
	realFr: 0,
	frArray: new Array(0),
	countSpecialNotes: 0,
	calc: function () {
		realCalculateZurich();
	}
};
var ZurichXML = false;
var ZurichH = '';
var kSto = 1;
var ZurichH1 = '';
var ZurichH2 = '';
var ZuricH3 = '';
var ZurichBt = '';
var ZurichMinFr = '';
var ZurichAllowDiscard = '';
//	Функция расчета стоимости КАСКО фирмы РСТ


function realCalculateZurich() {
	//	alert('111ch='+carChanged);
	if (cChange.changed) {
		//		alert('starting');
		$.post('./getZurichCar.php', {
			m: manufacturerName,
			c: carName,
			a: carAge.replace('carAge', ''),
			p: price
		}, function (data) {
			var carZurich = $(data);
			//				alert(data);
			ZurichH = parseFloat(carZurich.find('h').text());
			ZurichH1 = parseFloat(carZurich.find('h1').text());
			ZurichH2 = parseFloat(carZurich.find('h2').text());
			ZurichH3 = parseFloat(carZurich.find('h3').text());
			ZurichBt = parseFloat(carZurich.find('a').text());
			ZurichMinFr = parseFloat(carZurich.find('mf').text());
			ZurichAllowDiscard = parseFloat(carZurich.find('ad').text());
			calculateZurich();
			//	Функция 
		});
	} else {
		calculateZurich();
	}
}

function calculateZurich() {
	if (!ZurichXML) $.ajax({
		url: "zurich/Zurich.xml?" + rand % 1000,
		success: function (response) {
			ZurichXML = response;
			calcZurich(ZurichXML);
		},
		error: function (XMLHttpRequest, textStatus, errorThrown) {
			calculateZurich()
		}
	});
	else {
		calcZurich(ZurichXML);
	}
}

function calcZurich(response) {
	var ii = 0;
	realFr = 0;
	try {
		ZurichInfo.countSpecialNotes = 0;
		ZurichInfo.notesToDisplay = new Array(0);
		ZurichInfo.notesSpecial = '';
		var kXML = $(response).find('Ki');
		var bt = ZurichBt * parseInt(price) / 100;
		var kAgeExpMin = 0;
		var drAId, drEid;
		//		Проверяем стаж водителей+мультидрайв
		if (multiDrive) {
			if ($("#corporatePerson:checked").length > 0) kAgeExp = 1;
			else
			kAgeExp = 2;
		} else {
			for (var i = 0; i < driversListForCalc.length; i++) {
				var drA = driversListForCalc.eq(i).find('.f-driver-c2:first .input-47').eq(0).val();
				var drE = driversListForCalc.eq(i).find('.f-driver-c2:first .input-47').eq(1).val();
				drA = parseInt(drA);
				drE = parseInt(drE);
				if (drA < 20) drAId = '18-19';
				else if (drA < 23) drAId = '20-22';
				else if (drA < 26) drAId = '23-25';
				else if (drA < 29) drAId = '26-28';
				else if (drA < 33) drAId = '29-32';
				else if (drA < 36) drAId = '33-35';
				else if (drA < 39) drAId = '36-38';
				else if (drA < 45) drAId = '39-44';
				else if (drA < 51) drAId = '45-50';
				else if (drA < 56) drAId = '51-55';
				else if (drA < 61) drAId = '56-60';
				else if (drA < 66) drAId = '61-65';
				else drAId = 'm65';
				if (drE < 2) drEid = '0-1';
				else if (drE < 8) drEid = '2-7';
				else drEid = 'm7';
				var res = kXML.find('kAgeExp>e').filter(function () {
					return $(this).find('v:first').text() == drEid;
				});
				res = parseFloat(res.find('a').filter(function () {
					return $(this).find('v:first').text() == drAId
				}).find('k:first').text());
				if (res > kAgeExpMin) kAgeExpMin = res;
			}
			kAgeExp = kAgeExpMin;
		}
		//		Оплата в рассрочку
		oplata = $('input:checked').filter("[name='oplata']").val();
		switch (oplata) {
		case '0':
			oplata = 1;
			break;
		case '1':
			oplata = 1;
			break;
		case '2':
			oplata = parseFloat(kXML.find('oplata>c3').text());
			break;
		case '3':
			oplata = (($('#corporatePerson').attr('checked')) ? parseFloat(kXML.find('oplata>c4').text()) : parseFloat(kXML.find('oplata>c3').text()));
			break;
		}

		//		Способ возмещения ущерба
		var selectedStoa = $('#f-2').find('input:checked').filter("[name='sto']").val();
		var age = parseInt(carAge.replace('carAge', ''));
		switch (selectedStoa) {
		case '0':
			kSTo = 1;
			break;
		case '1':
			kSTo = 1;
			break;
		case '3':
			kSTo = kXML.find('stoa').text();
			break;
		case '4':
			kSto = age < 3 ? 1 : kSTo = kXML.find('stoa').text();
			break;
		}
		kSto = parseFloat(kSto);
		var maxFr = parseInt(selectedFr);
		if (!ZurichAllowDiscard && maxFr < ZurichMinFr) {
			counterCasco();
			return;
		}
		if (!rus) {
			fr = kXML.find('fr>ext>def').filter(function () {
				return parseInt($(this).find('v:first').text()) == ZurichMinFr;
			});
			fr = fr.find('rV').filter(function () {
				return parseInt($(this).find('v:first').text()) <= maxFr
			}).last();
			ZurichInfo.realFr = parseInt(fr.find('v').text());;
			fr = parseFloat(fr.find('k').text());
		}
		if (typeof fr == "undefined" || fr == 0 || isNaN(fr)) {
			fr = 1;
			ZurichInfo.realFr = 0;
		}
		//		alert('ageExp='+kAgeExp+'\noplata='+oplata+'\nkSto='+kSto+'\nmaxFr='+maxFr+'\nZurichMinFr='+ZurichMinFr+'\nfr='+fr+'\nrealFr='+ZurichInfo.realFr);
		if (typeof kSto == "undefined" || kSto == 0 || isNaN(kSto)) kSto = 1;

		//		Сигнализация
		selectedAlarm = 1;
		//	Бонус малус
		var malus;
		malus = 1;
		ZurichPrice = bt * oplata * kAgeExp * kSto * selectedAlarm * fr * malus + ZurichH * parseInt(price) / 100;
		var discount = (100 - parseFloat($('#sk10').text())) / 100;
		if (city == 'spb') ZurichPrice = ZurichPrice * 0.85;

/*
alert('rst:\n'+
"price="+parseInt(price)+"\n"
+"kCasco="+kCasco+"\n"
+"kRassrochka="+kRassrochka+"\n"
+"kAgeExp="+kAgeExp+"\n"
+"kSto="+kSto+"\n"
+"selectedAlarm="+selectedAlarm+"\n"
+"carAge="+carAge+"\n"
+"malus="+malus+"\n"
+"fr1="+fr+"\n"
+"countDrivers="+countDrivers+"\n");
*/
		ZurichPriceDiscount = ZurichPrice * discount;
		ZurichInfo.price = ZurichPrice;
		ZurichInfo.discountPrice = ZurichPriceDiscount;
		ZurichInfo.notes = ZurichNotes;
		if (!realFr) realFr = 0;
		ZurichInfo.realFr = realFr;
		ZurichInfo.notesSpecial += "Размер франшизы " + addSpaces(ZurichInfo.realFr.toString()) + " руб.<br>";
		ZurichInfo.notesToDisplay.push("<span style='margin:0px; padding:0px; margin-left:24px;; position:relative; top:5px;'>Франшиза: " + addSpaces(ZurichInfo.realFr.toString()) + " руб.</span><br>");
		ZurichInfo.notesSpecial = 'Особенности расчета страховой компании Цюрих:<br>' + ZurichInfo.notesSpecial;
		if (rus && (carAge == "carAge6" || carAge == "carAge7" || carAge == "carAge8")) {
			ZurichInfo.notesSpecial += 'Отечественные ТС старше 5 лет принимаются только по согласованию с андеррайтером страховой компании.<br>';
			ZurichInfo.countSpecialNotes++
			//	ZurichInfo.notesToDisplay.push("<span style='margin:0px; padding:0px; margin-left:4px;; position:relative; top:-5px;'>Слишком старое ТС</span>br>");
		}
/*
		if(priceChanged)
		{
			ZurichInfo.frArray=new Array(0);
			for(var i=1;i<=2.5001;i+=0.5)
			{
				var frImg={value:null,image:null}
				if((parseInt(price)/100*i)<=(slider2.maxVal+1)){
					frImg.value=parseInt(parseInt(price)/100*i);
					frImg.image=$("<img src='red.png' title='Франшиза "+addSpaces(frImg.value.toString())+" руб. для страховой компании Русские Страховые Традиции'>");
					ZurichInfo.frArray.push(frImg);
				}
			}
			for(var i=0;i<ZurichInfo.frArray.length;i++){
				var fromLeft=parseInt(ZurichInfo.frArray[i].value/slider2.maxVal*slider2.width);
				ZurichInfo.frArray[i].image.css("position","absolute").css("left",fromLeft+"px").css("top","0px").click(function(){$(this).parent().click();}).focus(function(){$(this).blur()}).appendTo($("#barsliderDiv1").eq(0));
				ZurichInfo.frArray[i].image.css("position","absolute").css("left",fromLeft+"px").css("top","0px").click(function(){$(this).parent().click();}).focus(function(){$(this).blur()}).clone().appendTo($("#barsliderDiv2").eq(0));
			}
		}
		*/
		//	counterCasco('rst');
		counterCasco();
	} catch (eee) {
		alert(eee.name + '\n%%%111111=' + eee);
		counterCasco();
	}
}
